home *** CD-ROM | disk | FTP | other *** search
- /********************************************************************\
- * text.h -- a basic text field *
- * Copyright (C) 1997 Robin D. Clark *
- * *
- * This program is free software; you can redistribute it and/or *
- * modify it under the terms of the GNU General Public License as *
- * published by the Free Software Foundation; either version 2 of *
- * the License, or (at your option) any later version. *
- * *
- * This program is distributed in the hope that it will be useful, *
- * but WITHOUT ANY WARRANTY; without even the implied warranty of *
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
- * GNU General Public License for more details. *
- * *
- * You should have received a copy of the GNU General Public License*
- * along with this program; if not, write to the Free Software *
- * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. *
- * *
- * Author: Rob Clark *
- * Internet: rclark@cs.hmc.edu *
- * Address: 609 8th Street *
- * Huntington Beach, CA 92648-4632 *
- \********************************************************************/
-
- #ifndef __TEXT_H__
- #define __TEXT_H__
-
- #include "wcore.h"
-
- typedef struct {
- char *txt; /* ptr to the text */
- int length; /* length of txt[] */
- int startPos; /* beginning of selected text */
- int endPos; /* end of selected text */
- } WTextBlock; /* if startPos == endPos, no txt *
- * is selected... they give the *
- * cursor position. */
- typedef struct {
- WCoreWindow *core;
- WMFont *font;
- WTextBlock text;
- GC gc;
- GC regGC; /* the normal GC */
- GC invGC; /* inverted, for selected text */
- WMagicNumber *magic;
- short xOffset;
- short yOffset;
- unsigned int done:1;
- unsigned int blink_on:1;
- unsigned int blinking:1;
- unsigned int canceled:1;
- } WTextInput;
-
-
- /** PROTOTYPES ******************************************************/
- WTextInput* wTextCreate( WCoreWindow *core, int x, int y, int width,
- int height );
- void wTextDestroy( WTextInput *wText );
- void wTextPaint( WTextInput *wText );
- char* wTextGetText( WTextInput *wText );
- void wTextPutText( WTextInput *wText, char *txt );
- void wTextInsert( WTextInput *wText, char *txt );
- void wTextSelect( WTextInput *wText, int start, int end );
- void wTextRefresh( WTextInput *wText );
-
- #endif
-